home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 5 / Amiga Tools 5.iso / tools / dtp / textread / source / case / textread.s < prev   
Encoding:
Text File  |  1996-07-16  |  59.2 KB  |  2,531 lines

  1. ;*********************************************
  2. ;*                                           *
  3. ;*       Designer (C) Ian OConnor 1994       *
  4. ;*                                           *
  5. ;*     Designer Produced Asm include file    *
  6. ;*                                           *
  7. ;*********************************************
  8.  
  9.  
  10. RefreshGList             EQU    -432
  11. DisposeObject            EQU    -642
  12. SetGadgetAttrsA          EQU    -660
  13. SetAttrsA                EQU    -648
  14. NewObjectA               EQU    -636
  15. DrawImageState           EQU    -618
  16. FreeScreenDrawInfo       EQU    -696
  17. GetScreenDrawInfo        EQU    -690
  18. GetDisplayInfoData       EQU    -756
  19. FindDisplayInfo          EQU    -726
  20. BltClear                 EQU    -300
  21. FreeRaster               EQU    -498
  22. AllocRaster              EQU    -492
  23. InitBitMap               EQU    -390
  24. OpenScreenTagList        EQU    -612
  25. ReplyMsg                 EQU    -378
  26. Remove                   EQU    -252
  27. Permit                   EQU    -138
  28. Forbid                   EQU    -132
  29. ModifyIDCMP              EQU    -150
  30. RemoveAppWindow          EQU    -54
  31. AddAppWindowA            EQU    -48
  32. DrawImage                EQU    -114
  33. OpenCatalogA             EQU    -150
  34. CloseCatalog             EQU    -36
  35. GetCatalogStr            EQU    -72
  36. GT_ReplyIMsg             EQU    -78
  37. GT_GetIMsg               EQU    -72
  38. WaitPort                 EQU    -384
  39. WindowToFront            EQU    -312
  40. ActivateWindow           EQU    -450
  41. AllocVec                 EQU    -684
  42. FreeVec                  EQU    -690
  43. CloseLibrary             EQU    -414
  44. OpenLibrary              EQU    -552
  45. CopyMem                  EQU    -624
  46. DrawBevelBoxA            EQU    -120
  47. CloseFont                EQU    -78
  48. OpenDiskFont             EQU    -30
  49. FreeMenus                EQU    -54
  50. LayoutMenusA             EQU    -66
  51. CreateMenusA             EQU    -48
  52. FreeGadgets              EQU    -36
  53. GT_RefreshWindow         EQU    -84
  54. CreateGadgetA            EQU    -30
  55. CreateContext            EQU    -114
  56. FreeVisualInfo           EQU    -132
  57. GetVisualInfoA           EQU    -126
  58. ClearMenuStrip           EQU    -54
  59. SetMenuStrip             EQU    -264
  60. UnlockPubScreen          EQU    -516
  61. LockPubScreen            EQU    -510
  62. PrintIText               EQU    -216
  63. CloseWindow              EQU    -72
  64. OpenWindowTagList        EQU    -606
  65.     cnop    0,2
  66.  
  67.     XDEF    findreq
  68.     XDEF    findreqGList
  69.     XDEF    findreqVisualInfo
  70.     XDEF    findreqDrawInfo
  71.  
  72. findreq:
  73.     dc.l    0
  74. findreqVisualInfo:
  75.     dc.l    0
  76. findreqDrawInfo:
  77.     dc.l    0
  78. findreqScreenTitle:
  79.     dc.b    'Textread - Find',0
  80. findreqWindowTitle:
  81.     dc.b    'Find',0
  82.     cnop    0,2
  83.  
  84. findreqBufNewGad:
  85.     dc.w    0,0,0,0
  86.     dc.l    0,0
  87.     dc.w    0
  88.     dc.l    0,0,0
  89.  
  90. sw_fwdbwdLabels:
  91.     dc.l    sw_fwdbwdLabelString0
  92.     dc.l    sw_fwdbwdLabelString1
  93.     dc.l    0
  94.  
  95. sw_fwdbwdLabelString0:
  96.     dc.b    'Forward',0
  97. sw_fwdbwdLabelString1:
  98.     dc.b    'Backward',0
  99.     cnop    0,2
  100. GD_sw_searchfor                                EQU    0
  101. sw_searchfor                                   EQU    0
  102. GD_sw_casesens                                 EQU    1
  103. sw_casesens                                    EQU    1
  104. GD_sw_wildcards                                EQU    2
  105. sw_wildcards                                   EQU    2
  106. GD_sw_fwdbwd                                   EQU    3
  107. sw_fwdbwd                                      EQU    3
  108. GD_sw_search                                   EQU    4
  109. sw_search                                      EQU    4
  110. GD_sw_use                                      EQU    5
  111. sw_use                                         EQU    5
  112. GD_sw_cancel                                   EQU    6
  113. sw_cancel                                      EQU    6
  114.  
  115. GDX_sw_searchfor                               EQU    0
  116. GDX_sw_casesens                                EQU    1
  117. GDX_sw_wildcards                               EQU    2
  118. GDX_sw_fwdbwd                                  EQU    3
  119. GDX_sw_search                                  EQU    4
  120. GDX_sw_use                                     EQU    5
  121. GDX_sw_cancel                                  EQU    6
  122.  
  123. findreqGTags:
  124.     dc.l    $8008002E,80
  125.     dc.l    $80030024,0
  126.     dc.l    $80080040,'_'
  127.     dc.l    0
  128.     dc.l    $80080044,1
  129.     dc.l    $80080040,'_'
  130.     dc.l    0
  131.     dc.l    $80080044,1
  132.     dc.l    $80080040,'_'
  133.     dc.l    0
  134.     dc.l    $80080040,'_'
  135.     dc.l    $8008000E,sw_fwdbwdLabels
  136.     dc.l    0
  137.     dc.l    $80080040,'_'
  138.     dc.l    0
  139.     dc.l    $80080040,'_'
  140.     dc.l    0
  141.     dc.l    $80080040,'_'
  142.     dc.l    0
  143.  
  144. findreqGTypes:
  145.     dc.w    12
  146.     dc.w    2
  147.     dc.w    2
  148.     dc.w    7
  149.     dc.w    1
  150.     dc.w    1
  151.     dc.w    1
  152.  
  153. findreqNGad:
  154.     dc.w    95,4,216,14
  155.     dc.l    sw_searchforText,0
  156.     dc.w    GD_sw_searchfor
  157.     dc.l    1,0,0
  158.     dc.w    285,22,26,11
  159.     dc.l    sw_casesensText,0
  160.     dc.w    GD_sw_casesens
  161.     dc.l    1,0,0
  162.     dc.w    95,22,26,11
  163.     dc.l    sw_wildcardsText,0
  164.     dc.w    GD_sw_wildcards
  165.     dc.l    1,0,0
  166.     dc.w    95,37,107,14
  167.     dc.l    sw_fwdbwdText,0
  168.     dc.w    GD_sw_fwdbwd
  169.     dc.l    1,0,0
  170.     dc.w    8,55,86,14
  171.     dc.l    sw_searchText,0
  172.     dc.w    GD_sw_search
  173.     dc.l    16,0,0
  174.     dc.w    116,55,86,14
  175.     dc.l    sw_useText,0
  176.     dc.w    GD_sw_use
  177.     dc.l    16,0,0
  178.     dc.w    225,55,86,14
  179.     dc.l    sw_cancelText,0
  180.     dc.w    GD_sw_cancel
  181.     dc.l    16,0,0
  182.  
  183. sw_searchforText:
  184.     dc.b    '_Find',0
  185.  
  186. sw_casesensText:
  187.     dc.b    'C_ase sensitive',0
  188.  
  189. sw_wildcardsText:
  190.     dc.b    '_Wildcards',0
  191.  
  192. sw_fwdbwdText:
  193.     dc.b    '_Direction',0
  194.  
  195. sw_searchText:
  196.     dc.b    '_Search',0
  197.  
  198. sw_useText:
  199.     dc.b    '_Use',0
  200.  
  201. sw_cancelText:
  202.     dc.b    '_Cancel',0
  203.  
  204.     cnop    0,2
  205.  
  206.  
  207.     XDEF    findreqGadgets
  208. findreqGadgets:
  209.     ds.l    7
  210. findreqCla:
  211.     dc.l    0
  212. findreqPrevGadget:
  213.     dc.l    0
  214. findreqQuickTags:
  215.     dc.l    0,0,0
  216.     cnop    0,2
  217.  
  218.     XDEF    findreqOffx
  219.     XDEF    findreqOffy
  220. findreqOffx:
  221.     dc.w    0
  222. findreqOffy:
  223.     dc.w    0
  224.  
  225. findreqTags:
  226.     dc.l    $80000064,30
  227.     dc.l    $80000065,30
  228. findreqIW:
  229.     dc.l    $80000076,319
  230. findreqIH:
  231.     dc.l    $80000077,73
  232.     dc.l    $8000006E
  233. findreqWT:
  234.     dc.l    findreqWindowTitle
  235.     dc.l    $8000006F
  236. findreqST:
  237.     dc.l    findreqScreenTitle
  238.     dc.l    $80000072,67
  239.     dc.l    $80000073,21
  240.     dc.l    $80000074,656
  241.     dc.l    $80000075,200
  242.     dc.l    $80000082,1
  243.     dc.l    $80000089,1
  244.     dc.l    $8000008A,1
  245.     dc.l    $80000093,1
  246.     dc.l    $8000008D,1
  247.     dc.l    $80000090,1
  248.     dc.l    $8000006C
  249. findreqGList:
  250.     dc.l    0
  251.     dc.l    $80000070
  252. findreqScr:
  253.     dc.l    0
  254.     dc.l    $8000006A,35651652
  255.     dc.l    0
  256.  
  257.     cnop    0,2
  258.  
  259.     XDEF    printreq
  260.     XDEF    printreqGList
  261.     XDEF    printreqVisualInfo
  262.     XDEF    printreqDrawInfo
  263.  
  264. printreq:
  265.     dc.l    0
  266. printreqVisualInfo:
  267.     dc.l    0
  268. printreqDrawInfo:
  269.     dc.l    0
  270. printreqScreenTitle:
  271.     dc.b    'Textread - Printer options',0
  272. printreqWindowTitle:
  273.     dc.b    'Printer options',0
  274.     cnop    0,2
  275.  
  276. printreqBufNewGad:
  277.     dc.w    0,0,0,0
  278.     dc.l    0,0
  279.     dc.w    0
  280.     dc.l    0,0,0
  281.  
  282. pw_headleftLabels:
  283.     dc.l    pw_headleftLabelString0
  284.     dc.l    pw_headleftLabelString1
  285.     dc.l    pw_headleftLabelString2
  286.     dc.l    0
  287.  
  288. pw_headleftLabelString0:
  289.     dc.b    'Nothing',0
  290. pw_headleftLabelString1:
  291.     dc.b    'Filename',0
  292. pw_headleftLabelString2:
  293.     dc.b    'Title',0
  294.     cnop    0,2
  295.  
  296. pw_headmidLabels:
  297.     dc.l    pw_headmidLabelString0
  298.     dc.l    pw_headmidLabelString1
  299.     dc.l    pw_headmidLabelString2
  300.     dc.l    0
  301.  
  302. pw_headmidLabelString0:
  303.     dc.b    'Nothing',0
  304. pw_headmidLabelString1:
  305.     dc.b    'Date',0
  306. pw_headmidLabelString2:
  307.     dc.b    'Page #',0
  308.     cnop    0,2
  309.  
  310. pw_headrightLabels:
  311.     dc.l    pw_headrightLabelString0
  312.     dc.l    pw_headrightLabelString1
  313.     dc.l    pw_headrightLabelString2
  314.     dc.l    0
  315.  
  316. pw_headrightLabelString0:
  317.     dc.b    'Nothing',0
  318. pw_headrightLabelString1:
  319.     dc.b    'Date',0
  320. pw_headrightLabelString2:
  321.     dc.b    'Page #',0
  322.     cnop    0,2
  323. GD_pw_headleft                                 EQU    0
  324. pw_headleft                                    EQU    0
  325. GD_pw_headmid                                  EQU    1
  326. pw_headmid                                     EQU    1
  327. GD_pw_headright                                EQU    2
  328. pw_headright                                   EQU    2
  329. GD_pw_headtitle                                EQU    3
  330. pw_headtitle                                   EQU    3
  331. GD_pw_bold                                     EQU    4
  332. pw_bold                                        EQU    4
  333. GD_pw_underlined                               EQU    5
  334. pw_underlined                                  EQU    5
  335. GD_pw_italic                                   EQU    6
  336. pw_italic                                      EQU    6
  337. GD_pw_print                                    EQU    7
  338. pw_print                                       EQU    7
  339. GD_pw_use                                      EQU    8
  340. pw_use                                         EQU    8
  341. GD_pw_cancel                                   EQU    9
  342. pw_cancel                                      EQU    9
  343. GD_pw_enableordisable                          EQU    10
  344. pw_enableordisable                             EQU    10
  345.  
  346. GDX_pw_headleft                                EQU    0
  347. GDX_pw_headmid                                 EQU    1
  348. GDX_pw_headright                               EQU    2
  349. GDX_pw_headtitle                               EQU    3
  350. GDX_pw_bold                                    EQU    4
  351. GDX_pw_underlined                              EQU    5
  352. GDX_pw_italic                                  EQU    6
  353. GDX_pw_print                                   EQU    7
  354. GDX_pw_use                                     EQU    8
  355. GDX_pw_cancel                                  EQU    9
  356. GDX_pw_enableordisable                         EQU    10
  357.  
  358. printreqGTags:
  359.     dc.l    $8008003D,2
  360.     dc.l    $80080040,'_'
  361.     dc.l    $80080045,1
  362.     dc.l    $80080047,4
  363.     dc.l    $8008000A,1
  364.     dc.l    $80080009,pw_headleftLabels
  365.     dc.l    0
  366.     dc.l    $8008003D,2
  367.     dc.l    $80080040,'_'
  368.     dc.l    $80080045,1
  369.     dc.l    $80080047,4
  370.     dc.l    $80080009,pw_headmidLabels
  371.     dc.l    0
  372.     dc.l    $8008003D,2
  373.     dc.l    $80080040,'_'
  374.     dc.l    $80080045,1
  375.     dc.l    $80080047,4
  376.     dc.l    $8008000A,1
  377.     dc.l    $80080009,pw_headrightLabels
  378.     dc.l    0
  379.     dc.l    $8008002E,40
  380.     dc.l    $8003000E,1
  381.     dc.l    $80080040,'_'
  382.     dc.l    0
  383.     dc.l    $80080044,1
  384.     dc.l    $80080040,'_'
  385.     dc.l    0
  386.     dc.l    $80080044,1
  387.     dc.l    $80080040,'_'
  388.     dc.l    0
  389.     dc.l    $80080044,1
  390.     dc.l    $80080040,'_'
  391.     dc.l    0
  392.     dc.l    $80080040,'_'
  393.     dc.l    0
  394.     dc.l    $80080040,'_'
  395.     dc.l    0
  396.     dc.l    $80080040,'_'
  397.     dc.l    0
  398.     dc.l    $80080044,1
  399.     dc.l    $80080040,'_'
  400.     dc.l    0
  401.  
  402. printreqGTypes:
  403.     dc.w    5
  404.     dc.w    5
  405.     dc.w    5
  406.     dc.w    12
  407.     dc.w    2
  408.     dc.w    2
  409.     dc.w    2
  410.     dc.w    1
  411.     dc.w    1
  412.     dc.w    1
  413.     dc.w    2
  414.  
  415. printreqNGad:
  416.     dc.w    8,32,16,8
  417.     dc.l    pw_headleftText,0
  418.     dc.w    GD_pw_headleft
  419.     dc.l    2,0,0
  420.     dc.w    169,32,16,8
  421.     dc.l    pw_headmidText,0
  422.     dc.w    GD_pw_headmid
  423.     dc.l    2,0,0
  424.     dc.w    331,32,16,8
  425.     dc.l    pw_headrightText,0
  426.     dc.w    GD_pw_headright
  427.     dc.l    2,0,0
  428.     dc.w    101,66,331,14
  429.     dc.l    pw_headtitleText,0
  430.     dc.w    GD_pw_headtitle
  431.     dc.l    1,0,0
  432.     dc.w    8,88,27,11
  433.     dc.l    pw_boldText,0
  434.     dc.w    GD_pw_bold
  435.     dc.l    2,0,0
  436.     dc.w    169,88,27,11
  437.     dc.l    pw_underlinedText,0
  438.     dc.w    GD_pw_underlined
  439.     dc.l    2,0,0
  440.     dc.w    331,88,27,11
  441.     dc.l    pw_italicText,0
  442.     dc.w    GD_pw_italic
  443.     dc.l    2,0,0
  444.     dc.w    8,108,101,14
  445.     dc.l    pw_printText,0
  446.     dc.w    GD_pw_print
  447.     dc.l    16,0,0
  448.     dc.w    169,108,101,14
  449.     dc.l    pw_useText,0
  450.     dc.w    GD_pw_use
  451.     dc.l    16,0,0
  452.     dc.w    331,108,101,14
  453.     dc.l    pw_cancelText,0
  454.     dc.w    GD_pw_cancel
  455.     dc.l    16,0,0
  456.     dc.w    8,4,27,11
  457.     dc.l    pw_enableordisableText,0
  458.     dc.w    GD_pw_enableordisable
  459.     dc.l    2,0,0
  460.  
  461. pw_headleftText:
  462.     dc.b    '_Left field',0
  463.  
  464. pw_headmidText:
  465.     dc.b    '_Middle field',0
  466.  
  467. pw_headrightText:
  468.     dc.b    '_Right field',0
  469.  
  470. pw_headtitleText:
  471.     dc.b    '_Title',0
  472.  
  473. pw_boldText:
  474.     dc.b    '_Bold',0
  475.  
  476. pw_underlinedText:
  477.     dc.b    'Un_derlined',0
  478.  
  479. pw_italicText:
  480.     dc.b    '_Italic',0
  481.  
  482. pw_printText:
  483.     dc.b    '_Print',0
  484.  
  485. pw_useText:
  486.     dc.b    '_Use',0
  487.  
  488. pw_cancelText:
  489.     dc.b    '_Cancel',0
  490.  
  491. pw_enableordisableText:
  492.     dc.b    '_Header enabled',0
  493.  
  494.     cnop    0,2
  495.  
  496.  
  497.     XDEF    printreqGadgets
  498. printreqGadgets:
  499.     ds.l    11
  500. printreqCla:
  501.     dc.l    0
  502. printreqPrevGadget:
  503.     dc.l    0
  504. printreqQuickTags:
  505.     dc.l    0,0,0
  506.     cnop    0,2
  507.  
  508.     XDEF    printreqOffx
  509.     XDEF    printreqOffy
  510. printreqOffx:
  511.     dc.w    0
  512. printreqOffy:
  513.     dc.w    0
  514.  
  515. printreqTags:
  516.     dc.l    $80000064,30
  517.     dc.l    $80000065,30
  518. printreqIW:
  519.     dc.l    $80000076,440
  520. printreqIH:
  521.     dc.l    $80000077,126
  522.     dc.l    $8000006E
  523. printreqWT:
  524.     dc.l    printreqWindowTitle
  525.     dc.l    $8000006F
  526. printreqST:
  527.     dc.l    printreqScreenTitle
  528.     dc.l    $80000072,67
  529.     dc.l    $80000073,21
  530.     dc.l    $80000074,656
  531.     dc.l    $80000075,200
  532.     dc.l    $80000082,1
  533.     dc.l    $80000089,1
  534.     dc.l    $8000008A,1
  535.     dc.l    $80000093,1
  536.     dc.l    $8000008D,1
  537.     dc.l    $80000090,1
  538.     dc.l    $8000006C
  539. printreqGList:
  540.     dc.l    0
  541.     dc.l    $80000070
  542. printreqScr:
  543.     dc.l    0
  544.     dc.l    $8000006A,39847036
  545.     dc.l    0
  546.  
  547.     cnop    0,2
  548.  
  549.     XDEF    tabsizereq
  550.     XDEF    tabsizereqGList
  551.     XDEF    tabsizereqVisualInfo
  552.     XDEF    tabsizereqDrawInfo
  553.  
  554. tabsizereq:
  555.     dc.l    0
  556. tabsizereqVisualInfo:
  557.     dc.l    0
  558. tabsizereqDrawInfo:
  559.     dc.l    0
  560. tabsizereqScreenTitle:
  561.     dc.b    'Textread - Tab size',0
  562. tabsizereqWindowTitle:
  563.     dc.b    'Tab size',0
  564.     cnop    0,2
  565.  
  566. tabsizereqBufNewGad:
  567.     dc.w    0,0,0,0
  568.     dc.l    0,0
  569.     dc.w    0
  570.     dc.l    0,0,0
  571. tw_tabsizeLF:
  572.     dc.b    '%2ld',0
  573.     cnop    0,2
  574. GD_tw_tabsize                                  EQU    0
  575. tw_tabsize                                     EQU    0
  576. GD_tw_use                                      EQU    1
  577. tw_use                                         EQU    1
  578. GD_tw_cancel                                   EQU    2
  579. tw_cancel                                      EQU    2
  580.  
  581. GDX_tw_tabsize                                 EQU    0
  582. GDX_tw_use                                     EQU    1
  583. GDX_tw_cancel                                  EQU    2
  584.  
  585. tabsizereqGTags:
  586.     dc.l    $80080026,1
  587.     dc.l    $80080027,15
  588.     dc.l    $80080028,8
  589.     dc.l    $8008002A, tw_tabsizeLF
  590.     dc.l    $80080029,4
  591.     dc.l    $8008002B,2
  592.     dc.l    $80030016,1
  593.     dc.l    $80080040,'_'
  594.     dc.l    0
  595.     dc.l    $80080040,'_'
  596.     dc.l    0
  597.     dc.l    $80080040,'_'
  598.     dc.l    0
  599.  
  600. tabsizereqGTypes:
  601.     dc.w    11
  602.     dc.w    1
  603.     dc.w    1
  604.  
  605. tabsizereqNGad:
  606.     dc.w    100,4,120,13
  607.     dc.l    tw_tabsizeText,0
  608.     dc.w    GD_tw_tabsize
  609.     dc.l    1,0,0
  610.     dc.w    8,24,85,14
  611.     dc.l    tw_useText,0
  612.     dc.w    GD_tw_use
  613.     dc.l    16,0,0
  614.     dc.w    157,24,85,14
  615.     dc.l    tw_cancelText,0
  616.     dc.w    GD_tw_cancel
  617.     dc.l    16,0,0
  618.  
  619. tw_tabsizeText:
  620.     dc.b    '_Tab size',0
  621.  
  622. tw_useText:
  623.     dc.b    '_Use',0
  624.  
  625. tw_cancelText:
  626.     dc.b    '_Cancel',0
  627.  
  628.     cnop    0,2
  629.  
  630.  
  631.     XDEF    tabsizereqGadgets
  632. tabsizereqGadgets:
  633.     ds.l    3
  634. tabsizereqCla:
  635.     dc.l    0
  636. tabsizereqPrevGadget:
  637.     dc.l    0
  638. tabsizereqQuickTags:
  639.     dc.l    0,0,0
  640.     cnop    0,2
  641.  
  642.     XDEF    tabsizereqOffx
  643.     XDEF    tabsizereqOffy
  644. tabsizereqOffx:
  645.     dc.w    0
  646. tabsizereqOffy:
  647.     dc.w    0
  648.  
  649. tabsizereqTags:
  650.     dc.l    $80000064,30
  651.     dc.l    $80000065,30
  652. tabsizereqIW:
  653.     dc.l    $80000076,252
  654. tabsizereqIH:
  655.     dc.l    $80000077,42
  656.     dc.l    $8000006E
  657. tabsizereqWT:
  658.     dc.l    tabsizereqWindowTitle
  659.     dc.l    $8000006F
  660. tabsizereqST:
  661.     dc.l    tabsizereqScreenTitle
  662.     dc.l    $80000072,67
  663.     dc.l    $80000073,21
  664.     dc.l    $80000074,656
  665.     dc.l    $80000075,200
  666.     dc.l    $80000082,1
  667.     dc.l    $80000089,1
  668.     dc.l    $8000008A,1
  669.     dc.l    $80000093,1
  670.     dc.l    $8000008D,1
  671.     dc.l    $80000090,1
  672.     dc.l    $8000006C
  673. tabsizereqGList:
  674.     dc.l    0
  675.     dc.l    $80000070
  676. tabsizereqScr:
  677.     dc.l    0
  678.     dc.l    $8000006A,35652724
  679.     dc.l    0
  680.  
  681.     cnop    0,2
  682.  
  683.     XDEF    revealreq
  684.     XDEF    revealreqGList
  685.     XDEF    revealreqVisualInfo
  686.     XDEF    revealreqDrawInfo
  687.  
  688. revealreq:
  689.     dc.l    0
  690. revealreqVisualInfo:
  691.     dc.l    0
  692. revealreqDrawInfo:
  693.     dc.l    0
  694. revealreqScreenTitle:
  695.     dc.b    'TextRead - Reveal',0
  696. revealreqWindowTitle:
  697.     dc.b    'Reveal',0
  698.     cnop    0,2
  699.  
  700. revealreqBufNewGad:
  701.     dc.w    0,0,0,0
  702.     dc.l    0,0
  703.     dc.w    0
  704.     dc.l    0,0,0
  705. GD_rw_list                                     EQU    0
  706. rw_list                                        EQU    0
  707. GD_rw_use                                      EQU    1
  708. rw_use                                         EQU    1
  709. GD_rw_cancel                                   EQU    2
  710. rw_cancel                                      EQU    2
  711.  
  712. GDX_rw_list                                    EQU    0
  713. GDX_rw_use                                     EQU    1
  714. GDX_rw_cancel                                  EQU    2
  715.  
  716. revealreqGTags:
  717.     dc.l    $80080035,0
  718.     dc.l    $80080040,'_'
  719.     dc.l    $80080036,0
  720.     dc.l    0
  721.     dc.l    $80080040,'_'
  722.     dc.l    0
  723.     dc.l    $80080040,'_'
  724.     dc.l    0
  725.  
  726. revealreqGTypes:
  727.     dc.w    4
  728.     dc.w    1
  729.     dc.w    1
  730.  
  731. revealreqNGad:
  732.     dc.w    8,16,281,52
  733.     dc.l    rw_listText,0
  734.     dc.w    GD_rw_list
  735.     dc.l    4,0,0
  736.     dc.w    8,78,101,14
  737.     dc.l    rw_useText,0
  738.     dc.w    GD_rw_use
  739.     dc.l    16,0,0
  740.     dc.w    188,78,101,14
  741.     dc.l    rw_cancelText,0
  742.     dc.w    GD_rw_cancel
  743.     dc.l    16,0,0
  744.  
  745. rw_listText:
  746.     dc.b    '_Buffer list',0
  747.  
  748. rw_useText:
  749.     dc.b    '_OK',0
  750.  
  751. rw_cancelText:
  752.     dc.b    '_Cancel',0
  753.  
  754.     cnop    0,2
  755.  
  756.  
  757.     XDEF    revealreqGadgets
  758. revealreqGadgets:
  759.     ds.l    3
  760. revealreqCla:
  761.     dc.l    0
  762. revealreqPrevGadget:
  763.     dc.l    0
  764. revealreqQuickTags:
  765.     dc.l    0,0,0
  766.     cnop    0,2
  767.  
  768.     XDEF    revealreqOffx
  769.     XDEF    revealreqOffy
  770. revealreqOffx:
  771.     dc.w    0
  772. revealreqOffy:
  773.     dc.w    0
  774.  
  775. revealreqTags:
  776.     dc.l    $80000064,30
  777.     dc.l    $80000065,30
  778. revealreqIW:
  779.     dc.l    $80000076,297
  780. revealreqIH:
  781.     dc.l    $80000077,96
  782.     dc.l    $8000006E
  783. revealreqWT:
  784.     dc.l    revealreqWindowTitle
  785.     dc.l    $8000006F
  786. revealreqST:
  787.     dc.l    revealreqScreenTitle
  788.     dc.l    $80000072,67
  789.     dc.l    $80000073,21
  790.     dc.l    $80000074,656
  791.     dc.l    $80000075,200
  792.     dc.l    $80000082,1
  793.     dc.l    $80000089,1
  794.     dc.l    $8000008A,1
  795.     dc.l    $80000093,1
  796.     dc.l    $8000008D,1
  797.     dc.l    $80000090,1
  798.     dc.l    $8000006C
  799. revealreqGList:
  800.     dc.l    0
  801.     dc.l    $80000070
  802. revealreqScr:
  803.     dc.l    0
  804.     dc.l    $8000006A,6292604
  805.     dc.l    0
  806.  
  807.  
  808. BevelTags:
  809.     dc.l    $80080033,1
  810.     dc.l    $80080034,0
  811.     dc.l    0
  812.     cnop    0,2
  813.  
  814.     XDEF    integerreq
  815.     XDEF    integerreqGList
  816.     XDEF    integerreqVisualInfo
  817.     XDEF    integerreqDrawInfo
  818.  
  819. integerreq:
  820.     dc.l    0
  821. integerreqVisualInfo:
  822.     dc.l    0
  823. integerreqDrawInfo:
  824.     dc.l    0
  825. integerreqScreenTitle:
  826.     dc.b    'Textread - Integer input',0
  827. integerreqWindowTitle:
  828.     dc.b    'Integer input',0
  829.     cnop    0,2
  830.  
  831. integerreqBufNewGad:
  832.     dc.w    0,0,0,0
  833.     dc.l    0,0
  834.     dc.w    0
  835.     dc.l    0,0,0
  836. iw_text1TX:
  837.     dc.b    '',0
  838.     cnop    0,2
  839. iw_text2TX:
  840.     dc.b    '',0
  841.     cnop    0,2
  842. GD_iw_integer                                  EQU    0
  843. iw_integer                                     EQU    0
  844. GD_iw_use                                      EQU    1
  845. iw_use                                         EQU    1
  846. GD_iw_cancel                                   EQU    2
  847. iw_cancel                                      EQU    2
  848. GD_iw_text1                                    EQU    3
  849. iw_text1                                       EQU    3
  850. GD_iw_text2                                    EQU    4
  851. iw_text2                                       EQU    4
  852.  
  853. GDX_iw_integer                                 EQU    0
  854. GDX_iw_use                                     EQU    1
  855. GDX_iw_cancel                                  EQU    2
  856. GDX_iw_text1                                   EQU    3
  857. GDX_iw_text2                                   EQU    4
  858.  
  859. integerreqGTags:
  860.     dc.l    $80032010,512
  861.     dc.l    $80030024,0
  862.     dc.l    $80080040,'_'
  863.     dc.l    0
  864.     dc.l    $80080040,'_'
  865.     dc.l    0
  866.     dc.l    $80080040,'_'
  867.     dc.l    0
  868.     dc.l    $8008004A,2
  869.     dc.l    0
  870.     dc.l    $8008004A,2
  871.     dc.l    0
  872.  
  873. integerreqGTypes:
  874.     dc.w    3
  875.     dc.w    1
  876.     dc.w    1
  877.     dc.w    13
  878.     dc.w    13
  879.  
  880. integerreqNGad:
  881.     dc.w    48,31,113,12
  882.     dc.l    iw_integerText,0
  883.     dc.w    GD_iw_integer
  884.     dc.l    1,0,0
  885.     dc.w    8,47,89,15
  886.     dc.l    iw_useText,0
  887.     dc.w    GD_iw_use
  888.     dc.l    16,0,0
  889.     dc.w    112,47,89,15
  890.     dc.l    iw_cancelText,0
  891.     dc.w    GD_iw_cancel
  892.     dc.l    16,0,0
  893.     dc.w    8,4,193,12
  894.     dc.l    iw_text1Text,0
  895.     dc.w    GD_iw_text1
  896.     dc.l    1,0,0
  897.     dc.w    8,15,193,12
  898.     dc.l    iw_text2Text,0
  899.     dc.w    GD_iw_text2
  900.     dc.l    1,0,0
  901.  
  902. iw_integerText:
  903.     dc.b    '',0
  904.  
  905. iw_useText:
  906.     dc.b    '_Use',0
  907.  
  908. iw_cancelText:
  909.     dc.b    '_Cancel',0
  910.  
  911. iw_text1Text:
  912.     dc.b    '',0
  913.  
  914. iw_text2Text:
  915.     dc.b    '',0
  916.  
  917.     cnop    0,2
  918.  
  919.  
  920.     XDEF    integerreqGadgets
  921. integerreqGadgets:
  922.     ds.l    5
  923. integerreqCla:
  924.     dc.l    0
  925. integerreqPrevGadget:
  926.     dc.l    0
  927. integerreqQuickTags:
  928.     dc.l    0,0,0
  929.     cnop    0,2
  930.  
  931.     XDEF    integerreqOffx
  932.     XDEF    integerreqOffy
  933. integerreqOffx:
  934.     dc.w    0
  935. integerreqOffy:
  936.     dc.w    0
  937.  
  938. integerreqTags:
  939.     dc.l    $80000064,30
  940.     dc.l    $80000065,30
  941. integerreqIW:
  942.     dc.l    $80000076,209
  943. integerreqIH:
  944.     dc.l    $80000077,66
  945.     dc.l    $8000006E
  946. integerreqWT:
  947.     dc.l    integerreqWindowTitle
  948.     dc.l    $8000006F
  949. integerreqST:
  950.     dc.l    integerreqScreenTitle
  951.     dc.l    $80000072,150
  952.     dc.l    $80000073,25
  953.     dc.l    $80000074,1200
  954.     dc.l    $80000075,1200
  955.     dc.l    $80000082,1
  956.     dc.l    $80000089,1
  957.     dc.l    $8000008A,1
  958.     dc.l    $80000093,1
  959.     dc.l    $8000008D,1
  960.     dc.l    $80000090,1
  961.     dc.l    $8000006C
  962. integerreqGList:
  963.     dc.l    0
  964.     dc.l    $80000070
  965. integerreqScr:
  966.     dc.l    0
  967.     dc.l    $8000006A,2097732
  968.     dc.l    0
  969.  
  970.  
  971. ;    XREF    _IntuitionBase
  972. ;    XREF    _GadToolsBase
  973. ;    XREF    _GfxBase
  974. ;    XREF    _SysBase
  975.  
  976.     XDEF    RendfindreqWindow
  977. RendfindreqWindow:
  978.     movem.l d0-d4/a0-a4/a6,-(sp)
  979.     move.l  _IntuitionBase,a6
  980.     move.l  findreq,d0
  981.     tst.l   d0
  982.     beq     findreqWindowUnOpened
  983.     movea.l findreq,a0
  984.     movea.l 50(a0),a4
  985. findreqWindowUnOpened:
  986.     movem.l (sp)+,d0-d4/a0-a4/a6
  987.     rts
  988.  
  989. findreqScaleX:
  990.     movem.l d1/a0-a1,-(sp)
  991.     move.l  #0,d1
  992.     move.l  findreqScr,a0
  993.     move.l  136(a0),a1
  994.     move.w  24(a1),d1
  995.     mulu.w  d1,d0
  996.     addq.w  #4,d0
  997.     divu.w  #8,d0
  998.     move.l  #0,d1
  999.     move.w  d0,d1
  1000.     move.l  d1,d0
  1001.     movem.l (sp)+,d1/a0-a1
  1002.     rts
  1003.  
  1004. findreqScaleY:
  1005.     movem.l d1/a0-a1,-(sp)
  1006.     move.l  #0,d1
  1007.     move.l  findreqScr,a0
  1008.     move.l  136(a0),a1
  1009.     move.w  20(a1),d1
  1010.     mulu.w  d1,d0
  1011.     addq.w  #4,d0
  1012.     divu.w  #8,d0
  1013.     move.l  #0,d1
  1014.     move.w  d0,d1
  1015.     move.l  d1,d0
  1016.     movem.l (sp)+,d1/a0-a1
  1017.     rts
  1018.  
  1019.     XDEF    OpenfindreqWindow
  1020. OpenfindreqWindow:
  1021.     movem.l d1-d4/a0-a6,-(sp)
  1022.     move.l  findreq,d0
  1023.     tst.l   d0
  1024.     bne     findreqAlreadyOpen
  1025.     move.l  a1,findreqScr
  1026.     move.l  #319,findreqIW+4
  1027.     move.l  #73,findreqIH+4
  1028.     move.l  findreqIW+4,d0
  1029.     jsr     findreqScaleX
  1030.     move.l  d0,findreqIW+4
  1031.     move.l  findreqIH+4,d0
  1032.     jsr     findreqScaleY
  1033.     move.l  d0,findreqIH+4
  1034.     move.l  findreqScr,a0
  1035.     move.b  36(a0),findreqOffx+1
  1036.     move.l  40(a0),a1
  1037.     move.w  4(a1),d1
  1038.     addq.w  #1,d1
  1039.     move.b  35(a0),d0
  1040.     ext.w   d0
  1041.     add.w   d1,d0
  1042.     move.w  d0,findreqOffy
  1043.     move.l  findreqScr,a0
  1044.     move.l  #0,a1
  1045.     move.l  _GadToolsBase,a6
  1046.     jsr     GetVisualInfoA(a6)
  1047.     move.l  d0,findreqVisualInfo
  1048.     beq     CannotGetfindreqVisualInfo
  1049.     move.l  findreqScr,a0
  1050.     move.l  _IntuitionBase,a6
  1051.     jsr     GetScreenDrawInfo(a6)
  1052.     move.l  d0,findreqDrawInfo
  1053.     beq     CannotGetfindreqDrawInfo
  1054.     move.l  #0,findreqGList
  1055.     movea.l _GadToolsBase,a6
  1056.     lea     findreqGList,a0
  1057.     jsr     CreateContext(a6)
  1058.     movea.l d0,a2
  1059.     tst.l   d0
  1060.     beq     CannotCreatefindreqContext
  1061.     move.l  #0,d3
  1062.     lea     findreqNGad,a5
  1063.     lea     findreqGTags,a4
  1064.     lea     findreqGTypes,a3
  1065. findreqGadgetLoop:
  1066.     move.w  (a3),d0
  1067.     cmp.w   #198,d0
  1068.     beq     findreqSkipOneGadget
  1069.     movea.l _SysBase,a6
  1070.     movea.l a5,a0
  1071.     lea     findreqBufNewGad,a1
  1072.     moveq   #30,d0
  1073.     jsr     CopyMem(a6)
  1074.     move.l  #0,d0
  1075.     move.l  findreqVisualInfo,findreqBufNewGad+22
  1076.     move.w  findreqBufNewGad,d0
  1077.     jsr     findreqScaleX
  1078.     move.w  d0,findreqBufNewGad
  1079.     move.w  findreqBufNewGad+2,d0
  1080.     jsr     findreqScaleY
  1081.     move.w  d0,findreqBufNewGad+2
  1082.     move.w  (a3),d0
  1083.     tst.w   d0
  1084.     beq     findreqDoNotScaleGeneric
  1085.     move.w  findreqBufNewGad+4,d0
  1086.     jsr     findreqScaleX
  1087.     move.w  d0,findreqBufNewGad+4
  1088.     move.w  findreqBufNewGad+6,d0
  1089.     jsr     findreqScaleY
  1090.     move.w  d0,findreqBufNewGad+6
  1091. findreqDoNotScaleGeneric:
  1092.     movea.l findreqScr,a1
  1093.     movea.l 40(a1),a0
  1094.     move.l  a0,findreqBufNewGad+12
  1095.     move.w  findreqOffx,d0
  1096.     move.w  findreqBufNewGad,d1
  1097.     add.w   d1,d0
  1098.     move.w  d0,findreqBufNewGad
  1099.     move.w  findreqOffy,d0
  1100.     move.w  2+findreqBufNewGad,d1
  1101.     add.w   d1,d0
  1102.     move.w  d0,findreqBufNewGad+2
  1103.     move.l  #0,d0
  1104.     movea.l _GadToolsBase,a6
  1105.     movea.l a2,a0
  1106.     move.w  (a3),d0
  1107.     lea     findreqBufNewGad,a1
  1108.     movea.l a4,a2
  1109.     jsr     CreateGadgetA(a6)
  1110.     movea.l d0,a2
  1111.     tst.l   d0
  1112.     beq     findreqBadGadgets
  1113.     lea    findreqGadgets,a0
  1114.     move.l  d3,d0
  1115.     mulu    #4,d0
  1116.     adda.l  d0,a0
  1117.     move.l  a2,(a0)
  1118. findreqSkipOneGadget:
  1119.     add.w   #1,d3
  1120.     adda    #30,a5
  1121.     adda    #2,a3
  1122.     jmp     findreqNextTag2
  1123. findreqNextTag1:
  1124.     adda    #8,a4
  1125. findreqNextTag2:
  1126.     move.l  (a4),d0
  1127.     tst.l   d0
  1128.     bne     findreqNextTag1
  1129.     adda    #4,a4
  1130.     move.w  d3,d0
  1131.     sub.w   #7,d0
  1132.     tst.w   d0
  1133.     bne     findreqGadgetLoop
  1134.     move.l  a2,findreqPrevGadget
  1135.     move.l  #0,d3
  1136.     lea     findreqNGad,a5
  1137.     lea     findreqGTags,a4
  1138.     lea     findreqGTypes,a3
  1139. findreqObjectLoop:
  1140.     move.w  (a3),d0
  1141.     cmp.w   #198,d0
  1142.     bne     findreqSkipNotObject
  1143.     move.l  #0,findreqCla
  1144.     movea.l findreqCla,a0
  1145.     movea.l 8(a5),a1
  1146.     movea.l a4,a2
  1147.     movea.l _IntuitionBase,a6
  1148.     jsr     NewObjectA(a6)
  1149.     movea.l d0,a2
  1150.     lea     findreqGadgets,a0
  1151.     move.l  d3,d0
  1152.     mulu    #4,d0
  1153.     adda.l  d0,a0
  1154.     move.l  a2,(a0)
  1155.     move.l  a2,d0
  1156.     tst.l   d0
  1157.     beq     findreqBadGadgets
  1158. findreqSkipNotObject:
  1159.     add.w   #1,d3
  1160.     adda    #30,a5
  1161.     adda    #2,a3
  1162.     jmp     findreqNextTag4
  1163. findreqNextTag3:
  1164.     adda    #8,a4
  1165. findreqNextTag4:
  1166.     move.l  (a4),d0
  1167.     tst.l   d0
  1168.     bne     findreqNextTag3
  1169.     adda    #4,a4
  1170.     move.w  d3,d0
  1171.     sub.w   #7,d0
  1172.     tst.w   d0
  1173.     bne     findreqObjectLoop
  1174.     move.l  #0,a0
  1175.     lea     findreqTags,a1
  1176.     move.l  _IntuitionBase,a6
  1177.     jsr     OpenWindowTagList(a6)
  1178.     move.l  d0,findreq
  1179.     tst.l   d0
  1180.     beq     findreqCannotOpenWin
  1181.     jsr     RendfindreqWindow
  1182.     move.l  findreq,a1
  1183.     move.l  findreqGList,a0
  1184.     move.l  #0,a2
  1185.     move.l  #$FFFF,d0
  1186.     move.l  _IntuitionBase,a6
  1187.     jsr     RefreshGList(a6)
  1188.     move.l  findreq,a0
  1189.     move.l  #0,a1
  1190.     move.l  _GadToolsBase,a6
  1191.     jsr     GT_RefreshWindow(a6)
  1192.     move.l  #0,d0
  1193.     jmp      OpenfindreqDone
  1194. findreqAlreadyOpen:
  1195.     move.l  _IntuitionBase,a6
  1196.     move.l  findreq,a0
  1197.     jsr     ActivateWindow(a6)
  1198.     jsr     WindowToFront(a6)
  1199.     move.l  #0,d0
  1200.     jmp     OpenfindreqDone
  1201. findreqCannotOpenWin:
  1202.     move.l  #1,d0
  1203.     jmp      FreefindreqGadgets
  1204. findreqBadGadgets:
  1205.     move.l   #2,d0
  1206. FreefindreqGadgets:
  1207.     move.l  d0,d2
  1208.     move.l  _GadToolsBase,a6
  1209.     move.l  findreqGList,a0
  1210.     jsr     FreeGadgets(a6)
  1211.     move.l  d2,d0
  1212.     jmp     FreefindreqDrawInfo
  1213. CannotCreatefindreqContext:
  1214.     move.l  #4,d0
  1215. FreefindreqDrawInfo:
  1216.     move.l  d0,d2
  1217.     movea.l _IntuitionBase,a6
  1218.     movea.l findreqScr,a0
  1219.     movea.l findreqDrawInfo,a1
  1220.     jsr     FreeScreenDrawInfo(a6)
  1221.     move.l  #0,findreqDrawInfo
  1222.     move.l  d2,d0
  1223.     jmp     FreefindreqVisualInfo
  1224. CannotGetfindreqDrawInfo:
  1225.     move.l  #128,d0
  1226. FreefindreqVisualInfo:
  1227.     move.l  d0,d2
  1228.     move.l  _GadToolsBase,a6
  1229.     move.l  findreqVisualInfo,a0
  1230.     jsr     FreeVisualInfo(a6)
  1231.     move.l  #0,findreqVisualInfo
  1232.     move.l  d2,d0
  1233.     jmp     OpenfindreqDone
  1234. CannotGetfindreqVisualInfo:
  1235.     move.l  #8,d0
  1236.     jmp     OpenfindreqDone
  1237. OpenfindreqDone:
  1238.     movem.l (sp)+,d1-d4/a0-a6
  1239.     rts
  1240.  
  1241.     XDEF    ClosefindreqWindow
  1242. ClosefindreqWindow:
  1243.     movem.l d0-d2/a0-a6,-(sp)
  1244.     move.l  findreq,d1
  1245.     tst.l   d1
  1246.     beq     findreqNotOpen
  1247.     move.l  findreqDrawInfo,d1
  1248.     tst.l   d1
  1249.     beq     findreqNoSDI
  1250.     movea.l findreq,a0
  1251.     movea.l 46(a0),a0
  1252.     movea.l findreqDrawInfo,a1
  1253.     move.l  _IntuitionBase,a6
  1254.     jsr     FreeScreenDrawInfo(a6)
  1255.     move.l  #0,findreqDrawInfo
  1256. findreqNoSDI:
  1257.     move.l  findreq,a0
  1258.     move.l  _IntuitionBase,a6
  1259.     jsr     CloseWindow(a6)
  1260.     move.l  #0,findreq
  1261. findreqNotOpen:
  1262.     move.l  findreqVisualInfo,d1
  1263.     tst.l   d1
  1264.     beq     findreqNoCVI
  1265.     move.l  d1,a0
  1266.     move.l  _GadToolsBase,a6
  1267.     jsr     FreeVisualInfo(a6)
  1268.     move.l  #0,findreqVisualInfo
  1269. findreqNoCVI:
  1270.     move.l  findreqGList,d1
  1271.     tst.l   d1
  1272.     beq     findreqNoCGList
  1273.     move.l  d1,a0
  1274.     move.l  _GadToolsBase,a6
  1275.     jsr     FreeGadgets(a6)
  1276.     move.l  #0,findreqGList
  1277. findreqNoCGList:
  1278.     movea.l _IntuitionBase,a6
  1279.     movem.l (sp)+,d0-d2/a0-a6
  1280.     rts
  1281.  
  1282.  
  1283.     XDEF    RendprintreqWindow
  1284. RendprintreqWindow:
  1285.     movem.l d0-d4/a0-a4/a6,-(sp)
  1286.     move.l  _IntuitionBase,a6
  1287.     move.l  printreq,d0
  1288.     tst.l   d0
  1289.     beq     printreqWindowUnOpened
  1290.     movea.l printreq,a0
  1291.     movea.l 50(a0),a4
  1292. printreqWindowUnOpened:
  1293.     movem.l (sp)+,d0-d4/a0-a4/a6
  1294.     rts
  1295.  
  1296. printreqScaleX:
  1297.     movem.l d1/a0-a1,-(sp)
  1298.     move.l  #0,d1
  1299.     move.l  printreqScr,a0
  1300.     move.l  136(a0),a1
  1301.     move.w  24(a1),d1
  1302.     mulu.w  d1,d0
  1303.     addq.w  #4,d0
  1304.     divu.w  #8,d0
  1305.     move.l  #0,d1
  1306.     move.w  d0,d1
  1307.     move.l  d1,d0
  1308.     movem.l (sp)+,d1/a0-a1
  1309.     rts
  1310.  
  1311. printreqScaleY:
  1312.     movem.l d1/a0-a1,-(sp)
  1313.     move.l  #0,d1
  1314.     move.l  printreqScr,a0
  1315.     move.l  136(a0),a1
  1316.     move.w  20(a1),d1
  1317.     mulu.w  d1,d0
  1318.     addq.w  #4,d0
  1319.     divu.w  #8,d0
  1320.     move.l  #0,d1
  1321.     move.w  d0,d1
  1322.     move.l  d1,d0
  1323.     movem.l (sp)+,d1/a0-a1
  1324.     rts
  1325.  
  1326.     XDEF    OpenprintreqWindow
  1327. OpenprintreqWindow:
  1328.     movem.l d1-d4/a0-a6,-(sp)
  1329.     move.l  printreq,d0
  1330.     tst.l   d0
  1331.     bne     printreqAlreadyOpen
  1332.     move.l  a1,printreqScr
  1333.     move.l  #440,printreqIW+4
  1334.     move.l  #126,printreqIH+4
  1335.     move.l  printreqIW+4,d0
  1336.     jsr     printreqScaleX
  1337.     move.l  d0,printreqIW+4
  1338.     move.l  printreqIH+4,d0
  1339.     jsr     printreqScaleY
  1340.     move.l  d0,printreqIH+4
  1341.     move.l  printreqScr,a0
  1342.     move.b  36(a0),printreqOffx+1
  1343.     move.l  40(a0),a1
  1344.     move.w  4(a1),d1
  1345.     addq.w  #1,d1
  1346.     move.b  35(a0),d0
  1347.     ext.w   d0
  1348.     add.w   d1,d0
  1349.     move.w  d0,printreqOffy
  1350.     move.l  printreqScr,a0
  1351.     move.l  #0,a1
  1352.     move.l  _GadToolsBase,a6
  1353.     jsr     GetVisualInfoA(a6)
  1354.     move.l  d0,printreqVisualInfo
  1355.     beq     CannotGetprintreqVisualInfo
  1356.     move.l  printreqScr,a0
  1357.     move.l  _IntuitionBase,a6
  1358.     jsr     GetScreenDrawInfo(a6)
  1359.     move.l  d0,printreqDrawInfo
  1360.     beq     CannotGetprintreqDrawInfo
  1361.     move.l  #0,printreqGList
  1362.     movea.l _GadToolsBase,a6
  1363.     lea     printreqGList,a0
  1364.     jsr     CreateContext(a6)
  1365.     movea.l d0,a2
  1366.     tst.l   d0
  1367.     beq     CannotCreateprintreqContext
  1368.     move.l  #0,d3
  1369.     lea     printreqNGad,a5
  1370.     lea     printreqGTags,a4
  1371.     lea     printreqGTypes,a3
  1372. printreqGadgetLoop:
  1373.     move.w  (a3),d0
  1374.     cmp.w   #198,d0
  1375.     beq     printreqSkipOneGadget
  1376.     movea.l _SysBase,a6
  1377.     movea.l a5,a0
  1378.     lea     printreqBufNewGad,a1
  1379.     moveq   #30,d0
  1380.     jsr     CopyMem(a6)
  1381.     move.l  #0,d0
  1382.     move.l  printreqVisualInfo,printreqBufNewGad+22
  1383.     move.w  printreqBufNewGad,d0
  1384.     jsr     printreqScaleX
  1385.     move.w  d0,printreqBufNewGad
  1386.     move.w  printreqBufNewGad+2,d0
  1387.     jsr     printreqScaleY
  1388.     move.w  d0,printreqBufNewGad+2
  1389.     move.w  (a3),d0
  1390.     tst.w   d0
  1391.     beq     printreqDoNotScaleGeneric
  1392.     move.w  printreqBufNewGad+4,d0
  1393.     jsr     printreqScaleX
  1394.     move.w  d0,printreqBufNewGad+4
  1395.     move.w  printreqBufNewGad+6,d0
  1396.     jsr     printreqScaleY
  1397.     move.w  d0,printreqBufNewGad+6
  1398. printreqDoNotScaleGeneric:
  1399.     movea.l printreqScr,a1
  1400.     movea.l 40(a1),a0
  1401.     move.l  a0,printreqBufNewGad+12
  1402.     move.w  printreqOffx,d0
  1403.     move.w  printreqBufNewGad,d1
  1404.     add.w   d1,d0
  1405.     move.w  d0,printreqBufNewGad
  1406.     move.w  printreqOffy,d0
  1407.     move.w  2+printreqBufNewGad,d1
  1408.     add.w   d1,d0
  1409.     move.w  d0,printreqBufNewGad+2
  1410.     move.l  #0,d0
  1411.     movea.l _GadToolsBase,a6
  1412.     movea.l a2,a0
  1413.     move.w  (a3),d0
  1414.     lea     printreqBufNewGad,a1
  1415.     movea.l a4,a2
  1416.     jsr     CreateGadgetA(a6)
  1417.     movea.l d0,a2
  1418.     tst.l   d0
  1419.     beq     printreqBadGadgets
  1420.     lea    printreqGadgets,a0
  1421.     move.l  d3,d0
  1422.     mulu    #4,d0
  1423.     adda.l  d0,a0
  1424.     move.l  a2,(a0)
  1425. printreqSkipOneGadget:
  1426.     add.w   #1,d3
  1427.     adda    #30,a5
  1428.     adda    #2,a3
  1429.     jmp     printreqNextTag2
  1430. printreqNextTag1:
  1431.     adda    #8,a4
  1432. printreqNextTag2:
  1433.     move.l  (a4),d0
  1434.     tst.l   d0
  1435.     bne     printreqNextTag1
  1436.     adda    #4,a4
  1437.     move.w  d3,d0
  1438.     sub.w   #11,d0
  1439.     tst.w   d0
  1440.     bne     printreqGadgetLoop
  1441.     move.l  a2,printreqPrevGadget
  1442.     move.l  #0,d3
  1443.     lea     printreqNGad,a5
  1444.     lea     printreqGTags,a4
  1445.     lea     printreqGTypes,a3
  1446. printreqObjectLoop:
  1447.     move.w  (a3),d0
  1448.     cmp.w   #198,d0
  1449.     bne     printreqSkipNotObject
  1450.     move.l  #0,printreqCla
  1451.     movea.l printreqCla,a0
  1452.     movea.l 8(a5),a1
  1453.     movea.l a4,a2
  1454.     movea.l _IntuitionBase,a6
  1455.     jsr     NewObjectA(a6)
  1456.     movea.l d0,a2
  1457.     lea     printreqGadgets,a0
  1458.     move.l  d3,d0
  1459.     mulu    #4,d0
  1460.     adda.l  d0,a0
  1461.     move.l  a2,(a0)
  1462.     move.l  a2,d0
  1463.     tst.l   d0
  1464.     beq     printreqBadGadgets
  1465. printreqSkipNotObject:
  1466.     add.w   #1,d3
  1467.     adda    #30,a5
  1468.     adda    #2,a3
  1469.     jmp     printreqNextTag4
  1470. printreqNextTag3:
  1471.     adda    #8,a4
  1472. printreqNextTag4:
  1473.     move.l  (a4),d0
  1474.     tst.l   d0
  1475.     bne     printreqNextTag3
  1476.     adda    #4,a4
  1477.     move.w  d3,d0
  1478.     sub.w   #11,d0
  1479.     tst.w   d0
  1480.     bne     printreqObjectLoop
  1481.     move.l  #0,a0
  1482.     lea     printreqTags,a1
  1483.     move.l  _IntuitionBase,a6
  1484.     jsr     OpenWindowTagList(a6)
  1485.     move.l  d0,printreq
  1486.     tst.l   d0
  1487.     beq     printreqCannotOpenWin
  1488.     jsr     RendprintreqWindow
  1489.     move.l  printreq,a1
  1490.     move.l  printreqGList,a0
  1491.     move.l  #0,a2
  1492.     move.l  #$FFFF,d0
  1493.     move.l  _IntuitionBase,a6
  1494.     jsr     RefreshGList(a6)
  1495.     move.l  printreq,a0
  1496.     move.l  #0,a1
  1497.     move.l  _GadToolsBase,a6
  1498.     jsr     GT_RefreshWindow(a6)
  1499.     move.l  #0,d0
  1500.     jmp      OpenprintreqDone
  1501. printreqAlreadyOpen:
  1502.     move.l  _IntuitionBase,a6
  1503.     move.l  printreq,a0
  1504.     jsr     ActivateWindow(a6)
  1505.     jsr     WindowToFront(a6)
  1506.     move.l  #0,d0
  1507.     jmp     OpenprintreqDone
  1508. printreqCannotOpenWin:
  1509.     move.l  #1,d0
  1510.     jmp      FreeprintreqGadgets
  1511. printreqBadGadgets:
  1512.     move.l   #2,d0
  1513. FreeprintreqGadgets:
  1514.     move.l  d0,d2
  1515.     move.l  _GadToolsBase,a6
  1516.     move.l  printreqGList,a0
  1517.     jsr     FreeGadgets(a6)
  1518.     move.l  d2,d0
  1519.     jmp     FreeprintreqDrawInfo
  1520. CannotCreateprintreqContext:
  1521.     move.l  #4,d0
  1522. FreeprintreqDrawInfo:
  1523.     move.l  d0,d2
  1524.     movea.l _IntuitionBase,a6
  1525.     movea.l printreqScr,a0
  1526.     movea.l printreqDrawInfo,a1
  1527.     jsr     FreeScreenDrawInfo(a6)
  1528.     move.l  #0,printreqDrawInfo
  1529.     move.l  d2,d0
  1530.     jmp     FreeprintreqVisualInfo
  1531. CannotGetprintreqDrawInfo:
  1532.     move.l  #128,d0
  1533. FreeprintreqVisualInfo:
  1534.     move.l  d0,d2
  1535.     move.l  _GadToolsBase,a6
  1536.     move.l  printreqVisualInfo,a0
  1537.     jsr     FreeVisualInfo(a6)
  1538.     move.l  #0,printreqVisualInfo
  1539.     move.l  d2,d0
  1540.     jmp     OpenprintreqDone
  1541. CannotGetprintreqVisualInfo:
  1542.     move.l  #8,d0
  1543.     jmp     OpenprintreqDone
  1544. OpenprintreqDone:
  1545.     movem.l (sp)+,d1-d4/a0-a6
  1546.     rts
  1547.  
  1548.     XDEF    CloseprintreqWindow
  1549. CloseprintreqWindow:
  1550.     movem.l d0-d2/a0-a6,-(sp)
  1551.     move.l  printreq,d1
  1552.     tst.l   d1
  1553.     beq     printreqNotOpen
  1554.     move.l  printreqDrawInfo,d1
  1555.     tst.l   d1
  1556.     beq     printreqNoSDI
  1557.     movea.l printreq,a0
  1558.     movea.l 46(a0),a0
  1559.     movea.l printreqDrawInfo,a1
  1560.     move.l  _IntuitionBase,a6
  1561.     jsr     FreeScreenDrawInfo(a6)
  1562.     move.l  #0,printreqDrawInfo
  1563. printreqNoSDI:
  1564.     move.l  printreq,a0
  1565.     move.l  _IntuitionBase,a6
  1566.     jsr     CloseWindow(a6)
  1567.     move.l  #0,printreq
  1568. printreqNotOpen:
  1569.     move.l  printreqVisualInfo,d1
  1570.     tst.l   d1
  1571.     beq     printreqNoCVI
  1572.     move.l  d1,a0
  1573.     move.l  _GadToolsBase,a6
  1574.     jsr     FreeVisualInfo(a6)
  1575.     move.l  #0,printreqVisualInfo
  1576. printreqNoCVI:
  1577.     move.l  printreqGList,d1
  1578.     tst.l   d1
  1579.     beq     printreqNoCGList
  1580.     move.l  d1,a0
  1581.     move.l  _GadToolsBase,a6
  1582.     jsr     FreeGadgets(a6)
  1583.     move.l  #0,printreqGList
  1584. printreqNoCGList:
  1585.     movea.l _IntuitionBase,a6
  1586.     movem.l (sp)+,d0-d2/a0-a6
  1587.     rts
  1588.  
  1589.  
  1590.     XDEF    RendtabsizereqWindow
  1591. RendtabsizereqWindow:
  1592.     movem.l d0-d4/a0-a4/a6,-(sp)
  1593.     move.l  _IntuitionBase,a6
  1594.     move.l  tabsizereq,d0
  1595.     tst.l   d0
  1596.     beq     tabsizereqWindowUnOpened
  1597.     movea.l tabsizereq,a0
  1598.     movea.l 50(a0),a4
  1599. tabsizereqWindowUnOpened:
  1600.     movem.l (sp)+,d0-d4/a0-a4/a6
  1601.     rts
  1602.  
  1603. tabsizereqScaleX:
  1604.     movem.l d1/a0-a1,-(sp)
  1605.     move.l  #0,d1
  1606.     move.l  tabsizereqScr,a0
  1607.     move.l  136(a0),a1
  1608.     move.w  24(a1),d1
  1609.     mulu.w  d1,d0
  1610.     addq.w  #4,d0
  1611.     divu.w  #8,d0
  1612.     move.l  #0,d1
  1613.     move.w  d0,d1
  1614.     move.l  d1,d0
  1615.     movem.l (sp)+,d1/a0-a1
  1616.     rts
  1617.  
  1618. tabsizereqScaleY:
  1619.     movem.l d1/a0-a1,-(sp)
  1620.     move.l  #0,d1
  1621.     move.l  tabsizereqScr,a0
  1622.     move.l  136(a0),a1
  1623.     move.w  20(a1),d1
  1624.     mulu.w  d1,d0
  1625.     addq.w  #4,d0
  1626.     divu.w  #8,d0
  1627.     move.l  #0,d1
  1628.     move.w  d0,d1
  1629.     move.l  d1,d0
  1630.     movem.l (sp)+,d1/a0-a1
  1631.     rts
  1632.  
  1633.     XDEF    OpentabsizereqWindow
  1634. OpentabsizereqWindow:
  1635.     movem.l d1-d4/a0-a6,-(sp)
  1636.     move.l  tabsizereq,d0
  1637.     tst.l   d0
  1638.     bne     tabsizereqAlreadyOpen
  1639.     move.l  a1,tabsizereqScr
  1640.     move.l  #252,tabsizereqIW+4
  1641.     move.l  #42,tabsizereqIH+4
  1642.     move.l  tabsizereqIW+4,d0
  1643.     jsr     tabsizereqScaleX
  1644.     move.l  d0,tabsizereqIW+4
  1645.     move.l  tabsizereqIH+4,d0
  1646.     jsr     tabsizereqScaleY
  1647.     move.l  d0,tabsizereqIH+4
  1648.     move.l  tabsizereqScr,a0
  1649.     move.b  36(a0),tabsizereqOffx+1
  1650.     move.l  40(a0),a1
  1651.     move.w  4(a1),d1
  1652.     addq.w  #1,d1
  1653.     move.b  35(a0),d0
  1654.     ext.w   d0
  1655.     add.w   d1,d0
  1656.     move.w  d0,tabsizereqOffy
  1657.     move.l  tabsizereqScr,a0
  1658.     move.l  #0,a1
  1659.     move.l  _GadToolsBase,a6
  1660.     jsr     GetVisualInfoA(a6)
  1661.     move.l  d0,tabsizereqVisualInfo
  1662.     beq     CannotGettabsizereqVisualInfo
  1663.     move.l  tabsizereqScr,a0
  1664.     move.l  _IntuitionBase,a6
  1665.     jsr     GetScreenDrawInfo(a6)
  1666.     move.l  d0,tabsizereqDrawInfo
  1667.     beq     CannotGettabsizereqDrawInfo
  1668.     move.l  #0,tabsizereqGList
  1669.     movea.l _GadToolsBase,a6
  1670.     lea     tabsizereqGList,a0
  1671.     jsr     CreateContext(a6)
  1672.     movea.l d0,a2
  1673.     tst.l   d0
  1674.     beq     CannotCreatetabsizereqContext
  1675.     move.l  #0,d3
  1676.     lea     tabsizereqNGad,a5
  1677.     lea     tabsizereqGTags,a4
  1678.     lea     tabsizereqGTypes,a3
  1679. tabsizereqGadgetLoop:
  1680.     move.w  (a3),d0
  1681.     cmp.w   #198,d0
  1682.     beq     tabsizereqSkipOneGadget
  1683.     movea.l _SysBase,a6
  1684.     movea.l a5,a0
  1685.     lea     tabsizereqBufNewGad,a1
  1686.     moveq   #30,d0
  1687.     jsr     CopyMem(a6)
  1688.     move.l  #0,d0
  1689.     move.l  tabsizereqVisualInfo,tabsizereqBufNewGad+22
  1690.     move.w  tabsizereqBufNewGad,d0
  1691.     jsr     tabsizereqScaleX
  1692.     move.w  d0,tabsizereqBufNewGad
  1693.     move.w  tabsizereqBufNewGad+2,d0
  1694.     jsr     tabsizereqScaleY
  1695.     move.w  d0,tabsizereqBufNewGad+2
  1696.     move.w  (a3),d0
  1697.     tst.w   d0
  1698.     beq     tabsizereqDoNotScaleGeneric
  1699.     move.w  tabsizereqBufNewGad+4,d0
  1700.     jsr     tabsizereqScaleX
  1701.     move.w  d0,tabsizereqBufNewGad+4
  1702.     move.w  tabsizereqBufNewGad+6,d0
  1703.     jsr     tabsizereqScaleY
  1704.     move.w  d0,tabsizereqBufNewGad+6
  1705. tabsizereqDoNotScaleGeneric:
  1706.     movea.l tabsizereqScr,a1
  1707.     movea.l 40(a1),a0
  1708.     move.l  a0,tabsizereqBufNewGad+12
  1709.     move.w  tabsizereqOffx,d0
  1710.     move.w  tabsizereqBufNewGad,d1
  1711.     add.w   d1,d0
  1712.     move.w  d0,tabsizereqBufNewGad
  1713.     move.w  tabsizereqOffy,d0
  1714.     move.w  2+tabsizereqBufNewGad,d1
  1715.     add.w   d1,d0
  1716.     move.w  d0,tabsizereqBufNewGad+2
  1717.     move.l  #0,d0
  1718.     movea.l _GadToolsBase,a6
  1719.     movea.l a2,a0
  1720.     move.w  (a3),d0
  1721.     lea     tabsizereqBufNewGad,a1
  1722.     movea.l a4,a2
  1723.     jsr     CreateGadgetA(a6)
  1724.     movea.l d0,a2
  1725.     tst.l   d0
  1726.     beq     tabsizereqBadGadgets
  1727.     lea    tabsizereqGadgets,a0
  1728.     move.l  d3,d0
  1729.     mulu    #4,d0
  1730.     adda.l  d0,a0
  1731.     move.l  a2,(a0)
  1732. tabsizereqSkipOneGadget:
  1733.     add.w   #1,d3
  1734.     adda    #30,a5
  1735.     adda    #2,a3
  1736.     jmp     tabsizereqNextTag2
  1737. tabsizereqNextTag1:
  1738.     adda    #8,a4
  1739. tabsizereqNextTag2:
  1740.     move.l  (a4),d0
  1741.     tst.l   d0
  1742.     bne     tabsizereqNextTag1
  1743.     adda    #4,a4
  1744.     move.w  d3,d0
  1745.     sub.w   #3,d0
  1746.     tst.w   d0
  1747.     bne     tabsizereqGadgetLoop
  1748.     move.l  a2,tabsizereqPrevGadget
  1749.     move.l  #0,d3
  1750.     lea     tabsizereqNGad,a5
  1751.     lea     tabsizereqGTags,a4
  1752.     lea     tabsizereqGTypes,a3
  1753. tabsizereqObjectLoop:
  1754.     move.w  (a3),d0
  1755.     cmp.w   #198,d0
  1756.     bne     tabsizereqSkipNotObject
  1757.     move.l  #0,tabsizereqCla
  1758.     movea.l tabsizereqCla,a0
  1759.     movea.l 8(a5),a1
  1760.     movea.l a4,a2
  1761.     movea.l _IntuitionBase,a6
  1762.     jsr     NewObjectA(a6)
  1763.     movea.l d0,a2
  1764.     lea     tabsizereqGadgets,a0
  1765.     move.l  d3,d0
  1766.     mulu    #4,d0
  1767.     adda.l  d0,a0
  1768.     move.l  a2,(a0)
  1769.     move.l  a2,d0
  1770.     tst.l   d0
  1771.     beq     tabsizereqBadGadgets
  1772. tabsizereqSkipNotObject:
  1773.     add.w   #1,d3
  1774.     adda    #30,a5
  1775.     adda    #2,a3
  1776.     jmp     tabsizereqNextTag4
  1777. tabsizereqNextTag3:
  1778.     adda    #8,a4
  1779. tabsizereqNextTag4:
  1780.     move.l  (a4),d0
  1781.     tst.l   d0
  1782.     bne     tabsizereqNextTag3
  1783.     adda    #4,a4
  1784.     move.w  d3,d0
  1785.     sub.w   #3,d0
  1786.     tst.w   d0
  1787.     bne     tabsizereqObjectLoop
  1788.     move.l  #0,a0
  1789.     lea     tabsizereqTags,a1
  1790.     move.l  _IntuitionBase,a6
  1791.     jsr     OpenWindowTagList(a6)
  1792.     move.l  d0,tabsizereq
  1793.     tst.l   d0
  1794.     beq     tabsizereqCannotOpenWin
  1795.     jsr     RendtabsizereqWindow
  1796.     move.l  tabsizereq,a1
  1797.     move.l  tabsizereqGList,a0
  1798.     move.l  #0,a2
  1799.     move.l  #$FFFF,d0
  1800.     move.l  _IntuitionBase,a6
  1801.     jsr     RefreshGList(a6)
  1802.     move.l  tabsizereq,a0
  1803.     move.l  #0,a1
  1804.     move.l  _GadToolsBase,a6
  1805.     jsr     GT_RefreshWindow(a6)
  1806.     move.l  #0,d0
  1807.     jmp      OpentabsizereqDone
  1808. tabsizereqAlreadyOpen:
  1809.     move.l  _IntuitionBase,a6
  1810.     move.l  tabsizereq,a0
  1811.     jsr     ActivateWindow(a6)
  1812.     jsr     WindowToFront(a6)
  1813.     move.l  #0,d0
  1814.     jmp     OpentabsizereqDone
  1815. tabsizereqCannotOpenWin:
  1816.     move.l  #1,d0
  1817.     jmp      FreetabsizereqGadgets
  1818. tabsizereqBadGadgets:
  1819.     move.l   #2,d0
  1820. FreetabsizereqGadgets:
  1821.     move.l  d0,d2
  1822.     move.l  _GadToolsBase,a6
  1823.     move.l  tabsizereqGList,a0
  1824.     jsr     FreeGadgets(a6)
  1825.     move.l  d2,d0
  1826.     jmp     FreetabsizereqDrawInfo
  1827. CannotCreatetabsizereqContext:
  1828.     move.l  #4,d0
  1829. FreetabsizereqDrawInfo:
  1830.     move.l  d0,d2
  1831.     movea.l _IntuitionBase,a6
  1832.     movea.l tabsizereqScr,a0
  1833.     movea.l tabsizereqDrawInfo,a1
  1834.     jsr     FreeScreenDrawInfo(a6)
  1835.     move.l  #0,tabsizereqDrawInfo
  1836.     move.l  d2,d0
  1837.     jmp     FreetabsizereqVisualInfo
  1838. CannotGettabsizereqDrawInfo:
  1839.     move.l  #128,d0
  1840. FreetabsizereqVisualInfo:
  1841.     move.l  d0,d2
  1842.     move.l  _GadToolsBase,a6
  1843.     move.l  tabsizereqVisualInfo,a0
  1844.     jsr     FreeVisualInfo(a6)
  1845.     move.l  #0,tabsizereqVisualInfo
  1846.     move.l  d2,d0
  1847.     jmp     OpentabsizereqDone
  1848. CannotGettabsizereqVisualInfo:
  1849.     move.l  #8,d0
  1850.     jmp     OpentabsizereqDone
  1851. OpentabsizereqDone:
  1852.     movem.l (sp)+,d1-d4/a0-a6
  1853.     rts
  1854.  
  1855.     XDEF    ClosetabsizereqWindow
  1856. ClosetabsizereqWindow:
  1857.     movem.l d0-d2/a0-a6,-(sp)
  1858.     move.l  tabsizereq,d1
  1859.     tst.l   d1
  1860.     beq     tabsizereqNotOpen
  1861.     move.l  tabsizereqDrawInfo,d1
  1862.     tst.l   d1
  1863.     beq     tabsizereqNoSDI
  1864.     movea.l tabsizereq,a0
  1865.     movea.l 46(a0),a0
  1866.     movea.l tabsizereqDrawInfo,a1
  1867.     move.l  _IntuitionBase,a6
  1868.     jsr     FreeScreenDrawInfo(a6)
  1869.     move.l  #0,tabsizereqDrawInfo
  1870. tabsizereqNoSDI:
  1871.     move.l  tabsizereq,a0
  1872.     move.l  _IntuitionBase,a6
  1873.     jsr     CloseWindow(a6)
  1874.     move.l  #0,tabsizereq
  1875. tabsizereqNotOpen:
  1876.     move.l  tabsizereqVisualInfo,d1
  1877.     tst.l   d1
  1878.     beq     tabsizereqNoCVI
  1879.     move.l  d1,a0
  1880.     move.l  _GadToolsBase,a6
  1881.     jsr     FreeVisualInfo(a6)
  1882.     move.l  #0,tabsizereqVisualInfo
  1883. tabsizereqNoCVI:
  1884.     move.l  tabsizereqGList,d1
  1885.     tst.l   d1
  1886.     beq     tabsizereqNoCGList
  1887.     move.l  d1,a0
  1888.     move.l  _GadToolsBase,a6
  1889.     jsr     FreeGadgets(a6)
  1890.     move.l  #0,tabsizereqGList
  1891. tabsizereqNoCGList:
  1892.     movea.l _IntuitionBase,a6
  1893.     movem.l (sp)+,d0-d2/a0-a6
  1894.     rts
  1895.  
  1896.  
  1897.     XDEF    RendrevealreqWindow
  1898. RendrevealreqWindow:
  1899.     movem.l d0-d4/a0-a4/a6,-(sp)
  1900.     move.l  _IntuitionBase,a6
  1901.     move.l  revealreq,d0
  1902.     tst.l   d0
  1903.     beq     revealreqWindowUnOpened
  1904.     movea.l revealreq,a0
  1905.     movea.l 50(a0),a4
  1906. revealreqWindowUnOpened:
  1907.     movem.l (sp)+,d0-d4/a0-a4/a6
  1908.     rts
  1909.  
  1910. revealreqScaleX:
  1911.     movem.l d1/a0-a1,-(sp)
  1912.     move.l  #0,d1
  1913.     move.l  revealreqScr,a0
  1914.     move.l  136(a0),a1
  1915.     move.w  24(a1),d1
  1916.     mulu.w  d1,d0
  1917.     addq.w  #4,d0
  1918.     divu.w  #8,d0
  1919.     move.l  #0,d1
  1920.     move.w  d0,d1
  1921.     move.l  d1,d0
  1922.     movem.l (sp)+,d1/a0-a1
  1923.     rts
  1924.  
  1925. revealreqScaleY:
  1926.     movem.l d1/a0-a1,-(sp)
  1927.     move.l  #0,d1
  1928.     move.l  revealreqScr,a0
  1929.     move.l  136(a0),a1
  1930.     move.w  20(a1),d1
  1931.     mulu.w  d1,d0
  1932.     addq.w  #4,d0
  1933.     divu.w  #8,d0
  1934.     move.l  #0,d1
  1935.     move.w  d0,d1
  1936.     move.l  d1,d0
  1937.     movem.l (sp)+,d1/a0-a1
  1938.     rts
  1939.  
  1940.     XDEF    OpenrevealreqWindow
  1941. OpenrevealreqWindow:
  1942.     movem.l d1-d4/a0-a6,-(sp)
  1943.     move.l  revealreq,d0
  1944.     tst.l   d0
  1945.     bne     revealreqAlreadyOpen
  1946.     move.l  a1,revealreqScr
  1947.     move.l  #297,revealreqIW+4
  1948.     move.l  #96,revealreqIH+4
  1949.     move.l  revealreqIW+4,d0
  1950.     jsr     revealreqScaleX
  1951.     move.l  d0,revealreqIW+4
  1952.     move.l  revealreqIH+4,d0
  1953.     jsr     revealreqScaleY
  1954.     move.l  d0,revealreqIH+4
  1955.     move.l  revealreqScr,a0
  1956.     move.b  36(a0),revealreqOffx+1
  1957.     move.l  40(a0),a1
  1958.     move.w  4(a1),d1
  1959.     addq.w  #1,d1
  1960.     move.b  35(a0),d0
  1961.     ext.w   d0
  1962.     add.w   d1,d0
  1963.     move.w  d0,revealreqOffy
  1964.     move.l  revealreqScr,a0
  1965.     move.l  #0,a1
  1966.     move.l  _GadToolsBase,a6
  1967.     jsr     GetVisualInfoA(a6)
  1968.     move.l  d0,revealreqVisualInfo
  1969.     beq     CannotGetrevealreqVisualInfo
  1970.     move.l  revealreqScr,a0
  1971.     move.l  _IntuitionBase,a6
  1972.     jsr     GetScreenDrawInfo(a6)
  1973.     move.l  d0,revealreqDrawInfo
  1974.     beq     CannotGetrevealreqDrawInfo
  1975.     move.l  #0,revealreqGList
  1976.     movea.l _GadToolsBase,a6
  1977.     lea     revealreqGList,a0
  1978.     jsr     CreateContext(a6)
  1979.     movea.l d0,a2
  1980.     tst.l   d0
  1981.     beq     CannotCreaterevealreqContext
  1982.     move.l  #0,d3
  1983.     lea     revealreqNGad,a5
  1984.     lea     revealreqGTags,a4
  1985.     lea     revealreqGTypes,a3
  1986. revealreqGadgetLoop:
  1987.     move.w  (a3),d0
  1988.     cmp.w   #198,d0
  1989.     beq     revealreqSkipOneGadget
  1990.     movea.l _SysBase,a6
  1991.     movea.l a5,a0
  1992.     lea     revealreqBufNewGad,a1
  1993.     moveq   #30,d0
  1994.     jsr     CopyMem(a6)
  1995.     move.l  #0,d0
  1996.     move.l  revealreqVisualInfo,revealreqBufNewGad+22
  1997.     move.w  revealreqBufNewGad,d0
  1998.     jsr     revealreqScaleX
  1999.     move.w  d0,revealreqBufNewGad
  2000.     move.w  revealreqBufNewGad+2,d0
  2001.     jsr     revealreqScaleY
  2002.     move.w  d0,revealreqBufNewGad+2
  2003.     move.w  (a3),d0
  2004.     tst.w   d0
  2005.     beq     revealreqDoNotScaleGeneric
  2006.     move.w  revealreqBufNewGad+4,d0
  2007.     jsr     revealreqScaleX
  2008.     move.w  d0,revealreqBufNewGad+4
  2009.     move.w  revealreqBufNewGad+6,d0
  2010.     jsr     revealreqScaleY
  2011.     move.w  d0,revealreqBufNewGad+6
  2012. revealreqDoNotScaleGeneric:
  2013.     movea.l revealreqScr,a1
  2014.     movea.l 40(a1),a0
  2015.     move.l  a0,revealreqBufNewGad+12
  2016.     move.w  revealreqOffx,d0
  2017.     move.w  revealreqBufNewGad,d1
  2018.     add.w   d1,d0
  2019.     move.w  d0,revealreqBufNewGad
  2020.     move.w  revealreqOffy,d0
  2021.     move.w  2+revealreqBufNewGad,d1
  2022.     add.w   d1,d0
  2023.     move.w  d0,revealreqBufNewGad+2
  2024.     move.l  #0,d0
  2025.     movea.l _GadToolsBase,a6
  2026.     movea.l a2,a0
  2027.     move.w  (a3),d0
  2028.     lea     revealreqBufNewGad,a1
  2029.     movea.l a4,a2
  2030.     jsr     CreateGadgetA(a6)
  2031.     movea.l d0,a2
  2032.     tst.l   d0
  2033.     beq     revealreqBadGadgets
  2034.     lea    revealreqGadgets,a0
  2035.     move.l  d3,d0
  2036.     mulu    #4,d0
  2037.     adda.l  d0,a0
  2038.     move.l  a2,(a0)
  2039. revealreqSkipOneGadget:
  2040.     add.w   #1,d3
  2041.     adda    #30,a5
  2042.     adda    #2,a3
  2043.     jmp     revealreqNextTag2
  2044. revealreqNextTag1:
  2045.     adda    #8,a4
  2046. revealreqNextTag2:
  2047.     move.l  (a4),d0
  2048.     tst.l   d0
  2049.     bne     revealreqNextTag1
  2050.     adda    #4,a4
  2051.     move.w  d3,d0
  2052.     sub.w   #3,d0
  2053.     tst.w   d0
  2054.     bne     revealreqGadgetLoop
  2055.     move.l  a2,revealreqPrevGadget
  2056.     move.l  #0,d3
  2057.     lea     revealreqNGad,a5
  2058.     lea     revealreqGTags,a4
  2059.     lea     revealreqGTypes,a3
  2060. revealreqObjectLoop:
  2061.     move.w  (a3),d0
  2062.     cmp.w   #198,d0
  2063.     bne     revealreqSkipNotObject
  2064.     move.l  #0,revealreqCla
  2065.     movea.l revealreqCla,a0
  2066.     movea.l 8(a5),a1
  2067.     movea.l a4,a2
  2068.     movea.l _IntuitionBase,a6
  2069.     jsr     NewObjectA(a6)
  2070.     movea.l d0,a2
  2071.     lea     revealreqGadgets,a0
  2072.     move.l  d3,d0
  2073.     mulu    #4,d0
  2074.     adda.l  d0,a0
  2075.     move.l  a2,(a0)
  2076.     move.l  a2,d0
  2077.     tst.l   d0
  2078.     beq     revealreqBadGadgets
  2079. revealreqSkipNotObject:
  2080.     add.w   #1,d3
  2081.     adda    #30,a5
  2082.     adda    #2,a3
  2083.     jmp     revealreqNextTag4
  2084. revealreqNextTag3:
  2085.     adda    #8,a4
  2086. revealreqNextTag4:
  2087.     move.l  (a4),d0
  2088.     tst.l   d0
  2089.     bne     revealreqNextTag3
  2090.     adda    #4,a4
  2091.     move.w  d3,d0
  2092.     sub.w   #3,d0
  2093.     tst.w   d0
  2094.     bne     revealreqObjectLoop
  2095.     move.l  #0,a0
  2096.     lea     revealreqTags,a1
  2097.     move.l  _IntuitionBase,a6
  2098.     jsr     OpenWindowTagList(a6)
  2099.     move.l  d0,revealreq
  2100.     tst.l   d0
  2101.     beq     revealreqCannotOpenWin
  2102.     jsr     RendrevealreqWindow
  2103.     move.l  revealreq,a1
  2104.     move.l  revealreqGList,a0
  2105.     move.l  #0,a2
  2106.     move.l  #$FFFF,d0
  2107.     move.l  _IntuitionBase,a6
  2108.     jsr     RefreshGList(a6)
  2109.     move.l  revealreq,a0
  2110.     move.l  #0,a1
  2111.     move.l  _GadToolsBase,a6
  2112.     jsr     GT_RefreshWindow(a6)
  2113.     move.l  #0,d0
  2114.     jmp      OpenrevealreqDone
  2115. revealreqAlreadyOpen:
  2116.     move.l  _IntuitionBase,a6
  2117.     move.l  revealreq,a0
  2118.     jsr     ActivateWindow(a6)
  2119.     jsr     WindowToFront(a6)
  2120.     move.l  #0,d0
  2121.     jmp     OpenrevealreqDone
  2122. revealreqCannotOpenWin:
  2123.     move.l  #1,d0
  2124.     jmp      FreerevealreqGadgets
  2125. revealreqBadGadgets:
  2126.     move.l   #2,d0
  2127. FreerevealreqGadgets:
  2128.     move.l  d0,d2
  2129.     move.l  _GadToolsBase,a6
  2130.     move.l  revealreqGList,a0
  2131.     jsr     FreeGadgets(a6)
  2132.     move.l  d2,d0
  2133.     jmp     FreerevealreqDrawInfo
  2134. CannotCreaterevealreqContext:
  2135.     move.l  #4,d0
  2136. FreerevealreqDrawInfo:
  2137.     move.l  d0,d2
  2138.     movea.l _IntuitionBase,a6
  2139.     movea.l revealreqScr,a0
  2140.     movea.l revealreqDrawInfo,a1
  2141.     jsr     FreeScreenDrawInfo(a6)
  2142.     move.l  #0,revealreqDrawInfo
  2143.     move.l  d2,d0
  2144.     jmp     FreerevealreqVisualInfo
  2145. CannotGetrevealreqDrawInfo:
  2146.     move.l  #128,d0
  2147. FreerevealreqVisualInfo:
  2148.     move.l  d0,d2
  2149.     move.l  _GadToolsBase,a6
  2150.     move.l  revealreqVisualInfo,a0
  2151.     jsr     FreeVisualInfo(a6)
  2152.     move.l  #0,revealreqVisualInfo
  2153.     move.l  d2,d0
  2154.     jmp     OpenrevealreqDone
  2155. CannotGetrevealreqVisualInfo:
  2156.     move.l  #8,d0
  2157.     jmp     OpenrevealreqDone
  2158. OpenrevealreqDone:
  2159.     movem.l (sp)+,d1-d4/a0-a6
  2160.     rts
  2161.  
  2162.     XDEF    CloserevealreqWindow
  2163. CloserevealreqWindow:
  2164.     movem.l d0-d2/a0-a6,-(sp)
  2165.     move.l  revealreq,d1
  2166.     tst.l   d1
  2167.     beq     revealreqNotOpen
  2168.     move.l  revealreqDrawInfo,d1
  2169.     tst.l   d1
  2170.     beq     revealreqNoSDI
  2171.     movea.l revealreq,a0
  2172.     movea.l 46(a0),a0
  2173.     movea.l revealreqDrawInfo,a1
  2174.     move.l  _IntuitionBase,a6
  2175.     jsr     FreeScreenDrawInfo(a6)
  2176.     move.l  #0,revealreqDrawInfo
  2177. revealreqNoSDI:
  2178.     move.l  revealreq,a0
  2179.     move.l  _IntuitionBase,a6
  2180.     jsr     CloseWindow(a6)
  2181.     move.l  #0,revealreq
  2182. revealreqNotOpen:
  2183.     move.l  revealreqVisualInfo,d1
  2184.     tst.l   d1
  2185.     beq     revealreqNoCVI
  2186.     move.l  d1,a0
  2187.     move.l  _GadToolsBase,a6
  2188.     jsr     FreeVisualInfo(a6)
  2189.     move.l  #0,revealreqVisualInfo
  2190. revealreqNoCVI:
  2191.     move.l  revealreqGList,d1
  2192.     tst.l   d1
  2193.     beq     revealreqNoCGList
  2194.     move.l  d1,a0
  2195.     move.l  _GadToolsBase,a6
  2196.     jsr     FreeGadgets(a6)
  2197.     move.l  #0,revealreqGList
  2198. revealreqNoCGList:
  2199.     movea.l _IntuitionBase,a6
  2200.     movem.l (sp)+,d0-d2/a0-a6
  2201.     rts
  2202.  
  2203.  
  2204.     XDEF    RendintegerreqWindow
  2205. RendintegerreqWindow:
  2206.     movem.l d0-d4/a0-a4/a6,-(sp)
  2207.     move.l  _IntuitionBase,a6
  2208.     move.l  integerreq,d0
  2209.     tst.l   d0
  2210.     beq     integerreqWindowUnOpened
  2211.     movea.l integerreq,a0
  2212.     movea.l 50(a0),a4
  2213.     move.l  integerreqVisualInfo,BevelTags+12
  2214.     move.l  _GadToolsBase,a6
  2215.     move.l  #23,d0
  2216.     jsr     integerreqScaleY
  2217.     move.l  d0,d3
  2218.     move.l  #193,d0
  2219.     jsr     integerreqScaleX
  2220.     move.l  d0,d2
  2221.     move.l  #4,d0
  2222.     jsr     integerreqScaleY
  2223.     add.w   integerreqOffy,d0
  2224.     move.l  d0,d1
  2225.     move.l  #8,d0
  2226.     jsr     integerreqScaleX
  2227.     add.w   integerreqOffx,d0
  2228.     move.l  a4,a0
  2229.     lea     BevelTags,a1
  2230.     jsr     DrawBevelBoxA(a6)
  2231. integerreqWindowUnOpened:
  2232.     movem.l (sp)+,d0-d4/a0-a4/a6
  2233.     rts
  2234.  
  2235. integerreqScaleX:
  2236.     movem.l d1/a0-a1,-(sp)
  2237.     move.l  #0,d1
  2238.     move.l  integerreqScr,a0
  2239.     move.l  136(a0),a1
  2240.     move.w  24(a1),d1
  2241.     mulu.w  d1,d0
  2242.     addq.w  #4,d0
  2243.     divu.w  #8,d0
  2244.     move.l  #0,d1
  2245.     move.w  d0,d1
  2246.     move.l  d1,d0
  2247.     movem.l (sp)+,d1/a0-a1
  2248.     rts
  2249.  
  2250. integerreqScaleY:
  2251.     movem.l d1/a0-a1,-(sp)
  2252.     move.l  #0,d1
  2253.     move.l  integerreqScr,a0
  2254.     move.l  136(a0),a1
  2255.     move.w  20(a1),d1
  2256.     mulu.w  d1,d0
  2257.     addq.w  #4,d0
  2258.     divu.w  #8,d0
  2259.     move.l  #0,d1
  2260.     move.w  d0,d1
  2261.     move.l  d1,d0
  2262.     movem.l (sp)+,d1/a0-a1
  2263.     rts
  2264.  
  2265.     XDEF    OpenintegerreqWindow
  2266. OpenintegerreqWindow:
  2267.     movem.l d1-d4/a0-a6,-(sp)
  2268.     move.l  integerreq,d0
  2269.     tst.l   d0
  2270.     bne     integerreqAlreadyOpen
  2271.     move.l  a1,integerreqScr
  2272.     move.l  #209,integerreqIW+4
  2273.     move.l  #66,integerreqIH+4
  2274.     move.l  integerreqIW+4,d0
  2275.     jsr     integerreqScaleX
  2276.     move.l  d0,integerreqIW+4
  2277.     move.l  integerreqIH+4,d0
  2278.     jsr     integerreqScaleY
  2279.     move.l  d0,integerreqIH+4
  2280.     move.l  integerreqScr,a0
  2281.     move.b  36(a0),integerreqOffx+1
  2282.     move.l  40(a0),a1
  2283.     move.w  4(a1),d1
  2284.     addq.w  #1,d1
  2285.     move.b  35(a0),d0
  2286.     ext.w   d0
  2287.     add.w   d1,d0
  2288.     move.w  d0,integerreqOffy
  2289.     move.l  integerreqScr,a0
  2290.     move.l  #0,a1
  2291.     move.l  _GadToolsBase,a6
  2292.     jsr     GetVisualInfoA(a6)
  2293.     move.l  d0,integerreqVisualInfo
  2294.     beq     CannotGetintegerreqVisualInfo
  2295.     move.l  integerreqScr,a0
  2296.     move.l  _IntuitionBase,a6
  2297.     jsr     GetScreenDrawInfo(a6)
  2298.     move.l  d0,integerreqDrawInfo
  2299.     beq     CannotGetintegerreqDrawInfo
  2300.     move.l  #0,integerreqGList
  2301.     movea.l _GadToolsBase,a6
  2302.     lea     integerreqGList,a0
  2303.     jsr     CreateContext(a6)
  2304.     movea.l d0,a2
  2305.     tst.l   d0
  2306.     beq     CannotCreateintegerreqContext
  2307.     move.l  #0,d3
  2308.     lea     integerreqNGad,a5
  2309.     lea     integerreqGTags,a4
  2310.     lea     integerreqGTypes,a3
  2311. integerreqGadgetLoop:
  2312.     move.w  (a3),d0
  2313.     cmp.w   #198,d0
  2314.     beq     integerreqSkipOneGadget
  2315.     movea.l _SysBase,a6
  2316.     movea.l a5,a0
  2317.     lea     integerreqBufNewGad,a1
  2318.     moveq   #30,d0
  2319.     jsr     CopyMem(a6)
  2320.     move.l  #0,d0
  2321.     move.l  integerreqVisualInfo,integerreqBufNewGad+22
  2322.     move.w  integerreqBufNewGad,d0
  2323.     jsr     integerreqScaleX
  2324.     move.w  d0,integerreqBufNewGad
  2325.     move.w  integerreqBufNewGad+2,d0
  2326.     jsr     integerreqScaleY
  2327.     move.w  d0,integerreqBufNewGad+2
  2328.     move.w  (a3),d0
  2329.     tst.w   d0
  2330.     beq     integerreqDoNotScaleGeneric
  2331.     move.w  integerreqBufNewGad+4,d0
  2332.     jsr     integerreqScaleX
  2333.     move.w  d0,integerreqBufNewGad+4
  2334.     move.w  integerreqBufNewGad+6,d0
  2335.     jsr     integerreqScaleY
  2336.     move.w  d0,integerreqBufNewGad+6
  2337. integerreqDoNotScaleGeneric:
  2338.     movea.l integerreqScr,a1
  2339.     movea.l 40(a1),a0
  2340.     move.l  a0,integerreqBufNewGad+12
  2341.     move.w  integerreqOffx,d0
  2342.     move.w  integerreqBufNewGad,d1
  2343.     add.w   d1,d0
  2344.     move.w  d0,integerreqBufNewGad
  2345.     move.w  integerreqOffy,d0
  2346.     move.w  2+integerreqBufNewGad,d1
  2347.     add.w   d1,d0
  2348.     move.w  d0,integerreqBufNewGad+2
  2349.     move.l  #0,d0
  2350.     movea.l _GadToolsBase,a6
  2351.     movea.l a2,a0
  2352.     move.w  (a3),d0
  2353.     lea     integerreqBufNewGad,a1
  2354.     movea.l a4,a2
  2355.     jsr     CreateGadgetA(a6)
  2356.     movea.l d0,a2
  2357.     tst.l   d0
  2358.     beq     integerreqBadGadgets
  2359.     lea    integerreqGadgets,a0
  2360.     move.l  d3,d0
  2361.     mulu    #4,d0
  2362.     adda.l  d0,a0
  2363.     move.l  a2,(a0)
  2364. integerreqSkipOneGadget:
  2365.     add.w   #1,d3
  2366.     adda    #30,a5
  2367.     adda    #2,a3
  2368.     jmp     integerreqNextTag2
  2369. integerreqNextTag1:
  2370.     adda    #8,a4
  2371. integerreqNextTag2:
  2372.     move.l  (a4),d0
  2373.     tst.l   d0
  2374.     bne     integerreqNextTag1
  2375.     adda    #4,a4
  2376.     move.w  d3,d0
  2377.     sub.w   #5,d0
  2378.     tst.w   d0
  2379.     bne     integerreqGadgetLoop
  2380.     move.l  a2,integerreqPrevGadget
  2381.     move.l  #0,d3
  2382.     lea     integerreqNGad,a5
  2383.     lea     integerreqGTags,a4
  2384.     lea     integerreqGTypes,a3
  2385. integerreqObjectLoop:
  2386.     move.w  (a3),d0
  2387.     cmp.w   #198,d0
  2388.     bne     integerreqSkipNotObject
  2389.     move.l  #0,integerreqCla
  2390.     movea.l integerreqCla,a0
  2391.     movea.l 8(a5),a1
  2392.     movea.l a4,a2
  2393.     movea.l _IntuitionBase,a6
  2394.     jsr     NewObjectA(a6)
  2395.     movea.l d0,a2
  2396.     lea     integerreqGadgets,a0
  2397.     move.l  d3,d0
  2398.     mulu    #4,d0
  2399.     adda.l  d0,a0
  2400.     move.l  a2,(a0)
  2401.     move.l  a2,d0
  2402.     tst.l   d0
  2403.     beq     integerreqBadGadgets
  2404. integerreqSkipNotObject:
  2405.     add.w   #1,d3
  2406.     adda    #30,a5
  2407.     adda    #2,a3
  2408.     jmp     integerreqNextTag4
  2409. integerreqNextTag3:
  2410.     adda    #8,a4
  2411. integerreqNextTag4:
  2412.     move.l  (a4),d0
  2413.     tst.l   d0
  2414.     bne     integerreqNextTag3
  2415.     adda    #4,a4
  2416.     move.w  d3,d0
  2417.     sub.w   #5,d0
  2418.     tst.w   d0
  2419.     bne     integerreqObjectLoop
  2420.     move.l  #0,a0
  2421.     lea     integerreqTags,a1
  2422.     move.l  _IntuitionBase,a6
  2423.     jsr     OpenWindowTagList(a6)
  2424.     move.l  d0,integerreq
  2425.     tst.l   d0
  2426.     beq     integerreqCannotOpenWin
  2427.     jsr     RendintegerreqWindow
  2428.     move.l  integerreq,a1
  2429.     move.l  integerreqGList,a0
  2430.     move.l  #0,a2
  2431.     move.l  #$FFFF,d0
  2432.     move.l  _IntuitionBase,a6
  2433.     jsr     RefreshGList(a6)
  2434.     move.l  integerreq,a0
  2435.     move.l  #0,a1
  2436.     move.l  _GadToolsBase,a6
  2437.     jsr     GT_RefreshWindow(a6)
  2438.     move.l  #0,d0
  2439.     jmp      OpenintegerreqDone
  2440. integerreqAlreadyOpen:
  2441.     move.l  _IntuitionBase,a6
  2442.     move.l  integerreq,a0
  2443.     jsr     ActivateWindow(a6)
  2444.     jsr     WindowToFront(a6)
  2445.     move.l  #0,d0
  2446.     jmp     OpenintegerreqDone
  2447. integerreqCannotOpenWin:
  2448.     move.l  #1,d0
  2449.     jmp      FreeintegerreqGadgets
  2450. integerreqBadGadgets:
  2451.     move.l   #2,d0
  2452. FreeintegerreqGadgets:
  2453.     move.l  d0,d2
  2454.     move.l  _GadToolsBase,a6
  2455.     move.l  integerreqGList,a0
  2456.     jsr     FreeGadgets(a6)
  2457.     move.l  d2,d0
  2458.     jmp     FreeintegerreqDrawInfo
  2459. CannotCreateintegerreqContext:
  2460.     move.l  #4,d0
  2461. FreeintegerreqDrawInfo:
  2462.     move.l  d0,d2
  2463.     movea.l _IntuitionBase,a6
  2464.     movea.l integerreqScr,a0
  2465.     movea.l integerreqDrawInfo,a1
  2466.     jsr     FreeScreenDrawInfo(a6)
  2467.     move.l  #0,integerreqDrawInfo
  2468.     move.l  d2,d0
  2469.     jmp     FreeintegerreqVisualInfo
  2470. CannotGetintegerreqDrawInfo:
  2471.     move.l  #128,d0
  2472. FreeintegerreqVisualInfo:
  2473.     move.l  d0,d2
  2474.     move.l  _GadToolsBase,a6
  2475.     move.l  integerreqVisualInfo,a0
  2476.     jsr     FreeVisualInfo(a6)
  2477.     move.l  #0,integerreqVisualInfo
  2478.     move.l  d2,d0
  2479.     jmp     OpenintegerreqDone
  2480. CannotGetintegerreqVisualInfo:
  2481.     move.l  #8,d0
  2482.     jmp     OpenintegerreqDone
  2483. OpenintegerreqDone:
  2484.     movem.l (sp)+,d1-d4/a0-a6
  2485.     rts
  2486.  
  2487.     XDEF    CloseintegerreqWindow
  2488. CloseintegerreqWindow:
  2489.     movem.l d0-d2/a0-a6,-(sp)
  2490.     move.l  integerreq,d1
  2491.     tst.l   d1
  2492.     beq     integerreqNotOpen
  2493.     move.l  integerreqDrawInfo,d1
  2494.     tst.l   d1
  2495.     beq     integerreqNoSDI
  2496.     movea.l integerreq,a0
  2497.     movea.l 46(a0),a0
  2498.     movea.l integerreqDrawInfo,a1
  2499.     move.l  _IntuitionBase,a6
  2500.     jsr     FreeScreenDrawInfo(a6)
  2501.     move.l  #0,integerreqDrawInfo
  2502. integerreqNoSDI:
  2503.     move.l  integerreq,a0
  2504.     move.l  _IntuitionBase,a6
  2505.     jsr     CloseWindow(a6)
  2506.     move.l  #0,integerreq
  2507. integerreqNotOpen:
  2508.     move.l  integerreqVisualInfo,d1
  2509.     tst.l   d1
  2510.     beq     integerreqNoCVI
  2511.     move.l  d1,a0
  2512.     move.l  _GadToolsBase,a6
  2513.     jsr     FreeVisualInfo(a6)
  2514.     move.l  #0,integerreqVisualInfo
  2515. integerreqNoCVI:
  2516.     move.l  integerreqGList,d1
  2517.     tst.l   d1
  2518.     beq     integerreqNoCGList
  2519.     move.l  d1,a0
  2520.     move.l  _GadToolsBase,a6
  2521.     jsr     FreeGadgets(a6)
  2522.     move.l  #0,integerreqGList
  2523. integerreqNoCGList:
  2524.     movea.l _IntuitionBase,a6
  2525.     movem.l (sp)+,d0-d2/a0-a6
  2526.     rts
  2527.  
  2528.  
  2529.     
  2530.     end
  2531.